Walking Takahashi
Traveling
移動できる場所は、回数を2で割った余りによって制約される
本問
移動可能な座標は、DとKによって制約される
まず、例えばX = 4, D = 3であれば、
https://scrapbox.io/files/65084d6416e940001c7a5688.png
青い点で示した場所にしか移動できない
まず自分がいる象限からDで絶対値をできるだけ減算するt6o_o6t.icon
X = 31, D = 4
K = 9なら、31 // 4 = 7より7回移動して、 $ X - 7D = 3に移動すれば良い
K = 3なら、$ X - KD =19に移動すれば良い
移動先はX - D * min(floor(abs(X) / D), K)と表せる
回数が余ったら、0に最も近い2点で消化する
余りが1なら、もう1歩行ったところに居るはずである
もう1歩行ったところは、Xによって定義できる
Xが負なら、計算した場所にD足した場所
絶対値だけを考えても問題ないと気づいたので変えた